<!DOCTYPE html>
<!--
@license
Copyright (C) 2015 The Android Open Source Project

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
<title>Elements Test Runner</title>
<meta charset="utf-8">
<script src="../bower_components/webcomponentsjs/webcomponents-lite.min.js"></script>
<script src="../bower_components/web-component-tester/browser.js"></script>
<script>
  const testFiles = [];
  const elementsPath = '../elements/';
  const behaviorsPath = '../behaviors/';

  // Elements tests.
  /* eslint-disable max-len */
  const elements = [
    // This seemed to be flakey when it was farther down the list. Keep at the
    // beginning.
    'gr-app_test.html',
    'admin/gr-access-section/gr-access-section_test.html',
    'admin/gr-admin-group-list/gr-admin-group-list_test.html',
    'admin/gr-admin-view/gr-admin-view_test.html',
    'admin/gr-confirm-delete-item-dialog/gr-confirm-delete-item-dialog_test.html',
    'admin/gr-create-change-dialog/gr-create-change-dialog_test.html',
    'admin/gr-create-group-dialog/gr-create-group-dialog_test.html',
    'admin/gr-create-pointer-dialog/gr-create-pointer-dialog_test.html',
    'admin/gr-create-repo-dialog/gr-create-repo-dialog_test.html',
    'admin/gr-group-audit-log/gr-group-audit-log_test.html',
    'admin/gr-group-members/gr-group-members_test.html',
    'admin/gr-group/gr-group_test.html',
    'admin/gr-permission/gr-permission_test.html',
    'admin/gr-plugin-list/gr-plugin-list_test.html',
    'admin/gr-repo-access/gr-repo-access_test.html',
    'admin/gr-repo-command/gr-repo-command_test.html',
    'admin/gr-repo-commands/gr-repo-commands_test.html',
    'admin/gr-repo-dashboards/gr-repo-dashboards_test.html',
    'admin/gr-repo-detail-list/gr-repo-detail-list_test.html',
    'admin/gr-repo-list/gr-repo-list_test.html',
    'admin/gr-repo/gr-repo_test.html',
    'admin/gr-rule-editor/gr-rule-editor_test.html',
    'change-list/gr-change-list-item/gr-change-list-item_test.html',
    'change-list/gr-change-list-view/gr-change-list-view_test.html',
    'change-list/gr-change-list/gr-change-list_test.html',
    'change-list/gr-create-commands-dialog/gr-create-commands-dialog_test.html',
    'change-list/gr-create-change-help/gr-create-change-help_test.html',
    'change-list/gr-dashboard-view/gr-dashboard-view_test.html',
    'change-list/gr-user-header/gr-user-header_test.html',
    'change/gr-account-entry/gr-account-entry_test.html',
    'change/gr-account-list/gr-account-list_test.html',
    'change/gr-change-actions/gr-change-actions_test.html',
    'change/gr-change-metadata/gr-change-metadata-it_test.html',
    'change/gr-change-metadata/gr-change-metadata_test.html',
    'change/gr-change-requirements/gr-change-requirements_test.html',
    'change/gr-change-view/gr-change-view_test.html',
    'change/gr-comment-list/gr-comment-list_test.html',
    'change/gr-commit-info/gr-commit-info_test.html',
    'change/gr-confirm-abandon-dialog/gr-confirm-abandon-dialog_test.html',
    'change/gr-confirm-cherrypick-dialog/gr-confirm-cherrypick-dialog_test.html',
    'change/gr-confirm-move-dialog/gr-confirm-move-dialog_test.html',
    'change/gr-confirm-rebase-dialog/gr-confirm-rebase-dialog_test.html',
    'change/gr-confirm-revert-dialog/gr-confirm-revert-dialog_test.html',
    'change/gr-confirm-submit-dialog/gr-confirm-submit-dialog_test.html',
    'change/gr-download-dialog/gr-download-dialog_test.html',
    'change/gr-file-list-header/gr-file-list-header_test.html',
    'change/gr-file-list/gr-file-list_test.html',
    'change/gr-included-in-dialog/gr-included-in-dialog_test.html',
    'change/gr-label-score-row/gr-label-score-row_test.html',
    'change/gr-label-scores/gr-label-scores_test.html',
    'change/gr-message/gr-message_test.html',
    'change/gr-messages-list/gr-messages-list_test.html',
    'change/gr-related-changes-list/gr-related-changes-list_test.html',
    'change/gr-reply-dialog/gr-reply-dialog-it_test.html',
    'change/gr-reply-dialog/gr-reply-dialog_test.html',
    'change/gr-reviewer-list/gr-reviewer-list_test.html',
    'change/gr-thread-list/gr-thread-list_test.html',
    'change/gr-upload-help-dialog/gr-upload-help-dialog_test.html',
    'core/gr-account-dropdown/gr-account-dropdown_test.html',
    'core/gr-error-dialog/gr-error-dialog_test.html',
    'core/gr-error-manager/gr-error-manager_test.html',
    'core/gr-key-binding-display/gr-key-binding-display_test.html',
    'core/gr-keyboard-shortcuts-dialog/gr-keyboard-shortcuts-dialog_test.html',
    'core/gr-main-header/gr-main-header_test.html',
    'core/gr-navigation/gr-navigation_test.html',
    'core/gr-reporting/gr-jank-detector_test.html',
    'core/gr-reporting/gr-reporting_test.html',
    'core/gr-router/gr-router_test.html',
    'core/gr-search-bar/gr-search-bar_test.html',
    'core/gr-smart-search/gr-smart-search_test.html',
    'diff/gr-comment-api/gr-comment-api_test.html',
    'diff/gr-diff-builder/gr-diff-builder_test.html',
    'diff/gr-diff-cursor/gr-diff-cursor_test.html',
    'diff/gr-diff-highlight/gr-annotation_test.html',
    'diff/gr-diff-highlight/gr-diff-highlight_test.html',
    'diff/gr-diff-mode-selector/gr-diff-mode-selector_test.html',
    'diff/gr-diff-preferences/gr-diff-preferences_test.html',
    'diff/gr-diff-processor/gr-diff-processor_test.html',
    'diff/gr-diff-selection/gr-diff-selection_test.html',
    'diff/gr-diff-view/gr-diff-view_test.html',
    'diff/gr-diff/gr-diff-group_test.html',
    'diff/gr-diff/gr-diff_test.html',
    'diff/gr-patch-range-select/gr-patch-range-select_test.html',
    'diff/gr-ranged-comment-layer/gr-ranged-comment-layer_test.html',
    'diff/gr-selection-action-box/gr-selection-action-box_test.html',
    'diff/gr-syntax-layer/gr-syntax-layer_test.html',
    'documentation/gr-documentation-search/gr-documentation-search_test.html',
    'edit/gr-default-editor/gr-default-editor_test.html',
    'edit/gr-edit-controls/gr-edit-controls_test.html',
    'edit/gr-edit-file-controls/gr-edit-file-controls_test.html',
    'edit/gr-editor-view/gr-editor-view_test.html',
    'plugins/gr-admin-api/gr-admin-api_test.html',
    'plugins/gr-attribute-helper/gr-attribute-helper_test.html',
    'plugins/gr-endpoint-decorator/gr-endpoint-decorator_test.html',
    'plugins/gr-event-helper/gr-event-helper_test.html',
    'plugins/gr-external-style/gr-external-style_test.html',
    'plugins/gr-plugin-host/gr-plugin-host_test.html',
    'plugins/gr-popup-interface/gr-plugin-popup_test.html',
    'plugins/gr-popup-interface/gr-popup-interface_test.html',
    'plugins/gr-repo-api/gr-repo-api_test.html',
    'plugins/gr-settings-api/gr-settings-api_test.html',
    'settings/gr-account-info/gr-account-info_test.html',
    'settings/gr-change-table-editor/gr-change-table-editor_test.html',
    'settings/gr-cla-view/gr-cla-view_test.html',
    'settings/gr-edit-preferences/gr-edit-preferences_test.html',
    'settings/gr-email-editor/gr-email-editor_test.html',
    'settings/gr-gpg-editor/gr-gpg-editor_test.html',
    'settings/gr-group-list/gr-group-list_test.html',
    'settings/gr-http-password/gr-http-password_test.html',
    'settings/gr-identities/gr-identities_test.html',
    'settings/gr-menu-editor/gr-menu-editor_test.html',
    'settings/gr-registration-dialog/gr-registration-dialog_test.html',
    'settings/gr-settings-view/gr-settings-view_test.html',
    'settings/gr-ssh-editor/gr-ssh-editor_test.html',
    'settings/gr-watched-projects-editor/gr-watched-projects-editor_test.html',
    'shared/gr-account-label/gr-account-label_test.html',
    'shared/gr-account-link/gr-account-link_test.html',
    'shared/gr-alert/gr-alert_test.html',
    'shared/gr-autocomplete-dropdown/gr-autocomplete-dropdown_test.html',
    'shared/gr-autocomplete/gr-autocomplete_test.html',
    'shared/gr-avatar/gr-avatar_test.html',
    'shared/gr-button/gr-button_test.html',
    'shared/gr-change-star/gr-change-star_test.html',
    'shared/gr-change-status/gr-change-status_test.html',
    'shared/gr-comment-thread/gr-comment-thread_test.html',
    'shared/gr-comment/gr-comment_test.html',
    'shared/gr-copy-clipboard/gr-copy-clipboard_test.html',
    'shared/gr-cursor-manager/gr-cursor-manager_test.html',
    'shared/gr-date-formatter/gr-date-formatter_test.html',
    'shared/gr-dialog/gr-dialog_test.html',
    'shared/gr-download-commands/gr-download-commands_test.html',
    'shared/gr-dropdown-list/gr-dropdown-list_test.html',
    'shared/gr-editable-content/gr-editable-content_test.html',
    'shared/gr-editable-label/gr-editable-label_test.html',
    'shared/gr-formatted-text/gr-formatted-text_test.html',
    'shared/gr-js-api-interface/gr-change-actions-js-api_test.html',
    'shared/gr-js-api-interface/gr-change-reply-js-api_test.html',
    'shared/gr-js-api-interface/gr-js-api-interface_test.html',
    'shared/gr-js-api-interface/gr-plugin-endpoints_test.html',
    'shared/gr-js-api-interface/gr-plugin-rest-api_test.html',
    'shared/gr-fixed-panel/gr-fixed-panel_test.html',
    'shared/gr-labeled-autocomplete/gr-labeled-autocomplete_test.html',
    'shared/gr-lib-loader/gr-lib-loader_test.html',
    'shared/gr-limited-text/gr-limited-text_test.html',
    'shared/gr-linked-chip/gr-linked-chip_test.html',
    'shared/gr-linked-text/gr-linked-text_test.html',
    'shared/gr-list-view/gr-list-view_test.html',
    'shared/gr-page-nav/gr-page-nav_test.html',
    'shared/gr-repo-branch-picker/gr-repo-branch-picker_test.html',
    'shared/gr-rest-api-interface/gr-auth_test.html',
    'shared/gr-rest-api-interface/gr-rest-api-interface_test.html',
    'shared/gr-rest-api-interface/gr-reviewer-updates-parser_test.html',
    'shared/gr-select/gr-select_test.html',
    'shared/gr-storage/gr-storage_test.html',
    'shared/gr-textarea/gr-textarea_test.html',
    'shared/gr-tooltip-content/gr-tooltip-content_test.html',
    'shared/gr-tooltip/gr-tooltip_test.html',
    'shared/revision-info/revision-info_test.html',
  ];
  /* eslint-enable max-len */
  for (let file of elements) {
    file = elementsPath + file;
    testFiles.push(file);
    testFiles.push(file + '?dom=shadow');
  }

  // Behaviors tests.
  /* eslint-disable max-len */
  const behaviors = [
    'async-foreach-behavior/async-foreach-behavior_test.html',
    'base-url-behavior/base-url-behavior_test.html',
    'docs-url-behavior/docs-url-behavior_test.html',
    'dom-util-behavior/dom-util-behavior_test.html',
    'keyboard-shortcut-behavior/keyboard-shortcut-behavior_test.html',
    'rest-client-behavior/rest-client-behavior_test.html',
    'gr-access-behavior/gr-access-behavior_test.html',
    'gr-admin-nav-behavior/gr-admin-nav-behavior_test.html',
    'gr-anonymous-name-behavior/gr-anonymous-name-behavior_test.html',
    'gr-change-table-behavior/gr-change-table-behavior_test.html',
    'gr-patch-set-behavior/gr-patch-set-behavior_test.html',
    'gr-path-list-behavior/gr-path-list-behavior_test.html',
    'gr-tooltip-behavior/gr-tooltip-behavior_test.html',
    'gr-url-encoding-behavior/gr-url-encoding-behavior_test.html',
    'safe-types-behavior/safe-types-behavior_test.html',
  ];
  /* eslint-enable max-len */
  for (let file of behaviors) {
    // Behaviors do not utilize the DOM, so no shadow DOM test is necessary.
    file = behaviorsPath + file;
    testFiles.push(file);
  }

  WCT.loadSuites(testFiles);
</script>
